/**
 * @description Sequelize 同步数据库
 */
const seq = require('./seq')
const setAssociations = require('./setAssociations')

require('./model/index')

// 同步前测试连接
seq.authenticate().then(() => {
  console.log('Auth OK')
}).catch(() => {
  console.log('Auth ERR')
})

// 根据关联关系自动建关联表
setAssociations()

// 执行同步
// force: 如果数据库中已有表，那么覆盖并创建新的
// alter: 这将检查数据库中表的当前状态(它具有哪些列,它们的数据类型等),然后在表中进行必要的更改以使其与模型匹配
seq.sync({ force: true, match: /_(dev|test)$/ }).then(() => {
  console.log('Sync OK')
  process.exit() // 同步成功后退出进程
})
